/*
 * @Author: sonss
 * @Date: 2024-03-06 03:30:30
 * @LastEditTime: 2024-03-06 12:27:26
 * @FilePath: /tencent-meeting-sdk-golang/qqmeeting/real_control.go
 * @Description: 会议控制
 */
package qqmeeting

// 设置联席主持人
type RealControlMeetingCoHostsRequest struct {
	MeetingID      string           `json:"-" param:"meeting_id"`       // 会议 ID
	OperatorID     *string          `json:"operator_id,omitempty"`      // 操作者 ID
	OperatorIDType *int             `json:"operator_id_type,omitempty"` // 操作者 ID 的类型
	Uuid           *string          `json:"uuid,omitempty"`             // 操作者用户唯一身份 ID,即将废弃，推荐使用 operator_id
	InstanceID     int              `json:"instanceid"`                 // 用户的终端设备类型
	Action         bool             `json:"action"`                     // 具体设置动作: 设置联席主持人|撤销联席主持人
	User           *RealControlUser `json:"user"`                       // 被操作用户对象信息
}

func (req RealControlMeetingCoHostsRequest) getDescriptor() *MeetingRequestDescriptor {
	return &RequestDescriptorRealControlMeetingCoHosts
}

func (req RealControlMeetingCoHostsRequest) fillPlaceholder(args ...interface{}) string {
	return defaultPlaceholderFiller(req, args...)
}

// 静音用户
type RealControlMeetingMutesRequest struct {
	MeetingID      string           `json:"-" param:"meeting_id"`       // 会议 ID
	OperatorID     *string          `json:"operator_id,omitempty"`      // 操作者 ID
	OperatorIDType *int             `json:"operator_id_type,omitempty"` // 操作者 ID 的类型
	Uuid           *string          `json:"uuid,omitempty"`             // 操作者用户唯一身份 ID,即将废弃，推荐使用 operator_id
	InstanceID     int              `json:"instanceid"`                 // 用户的终端设备类型
	Mute           bool             `json:"mute"`                       // 是否静音：true：静音, false：解除静音
	User           *RealControlUser `json:"user"`                       // 被操作用户对象信息
}

func (req RealControlMeetingMutesRequest) getDescriptor() *MeetingRequestDescriptor {
	return &RequestDescriptorRealControlMeetingMutes
}

func (req RealControlMeetingMutesRequest) fillPlaceholder(args ...interface{}) string {
	return defaultPlaceholderFiller(req, args...)
}
